普通宽带实现固定IP 您所在的位置:网站首页 固定ip 公网ip 普通宽带实现固定IP

普通宽带实现固定IP

#普通宽带实现固定IP| 来源: 网络整理| 查看: 265

固定IP价格太贵,研究几天通过某信宽带拨号上网获取的动态公网IP(一般分配是私网IP,可以打电话给客服让改公网IP),然后在域名添加个A记录,通过不断监测本地公网IP更新到A记录实现。

配置需求:

1.宽带一条,拨号可以得到公网IP

2.域名一个,什么域名都可以

3.注册一个cloudflare帐号,免费版就行。阿里域名解析服务也可以,没有测试

4.一台可以运行shell的机器

方法:

将域名托管转移到cloudflare,在cloudflare服务里dns服务添加一台A记录,填上你本地的公网IP。

使用cloudflare的API更新公网IP,需要提供cloudflare的zone id 和 key,使用api获取域名A记录序列号。

curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/dns_records?type=A&name=example.com&content=127.0.0.1&page=1&per_page=20&order=type&direction=desc&match=all" \ -H "X-Auth-Email: [email protected]" \ -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \ -H "Content-Type: application/json"

运行上面命令会返回

{ "success": true, "errors": [], "messages": [], "result": [ { "id": "372e67954025e0ba6aaa6d586b9e0b59", "type": "A", "name": "example.com", "content": "198.51.100.4", "proxiable": true, "proxied": false, "ttl": 120, "locked": false, "zone_id": "023e105f4ecef8ad9ca31a8372d0c353", "zone_name": "example.com", "created_on": "2014-01-01T05:20:00.12345Z", "modified_on": "2014-01-01T05:20:00.12345Z", "data": {} } ], "result_info": { "page": 1, "per_page": 20, "count": 1, "total_count": 2000 } }

返回id就是添加的A记录的标示符

下一步定时更新公网IP到cloudflare

#获取公网IP a1=$(curl -s ipecho.net/plain) #更新到cloudflare curl -X PUT "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/dns_records/372e67954025e0ba6aaa6d586b9e0b59" \ -H "X-Auth-Email: [email protected]" \ -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \ -H "Content-Type: application/json" \ --data '{"type":"A","name":"example.com","content":"'"$a1"'","ttl":120,"proxied":false}'

返回如下说明就已经成功了:

{ "success": true, "errors": [], "messages": [], "result": { "id": "372e67954025e0ba6aaa6d586b9e0b59", "type": "A", "name": "example.com", "content": "198.51.100.4", "proxiable": true, "proxied": false, "ttl": 120, "locked": false, "zone_id": "023e105f4ecef8ad9ca31a8372d0c353", "zone_name": "example.com", "created_on": "2014-01-01T05:20:00.12345Z", "modified_on": "2014-01-01T05:20:00.12345Z", "data": {} } }

这样就可以通过域名访问了,然后自己在路由设置好映射就可以了。

cloudflare API参考地址https://api.cloudflare.com/#dns-records-for-a-zone-update-dns-record

 

以上个人自写,如有违规请联系作者修改。建议也可以留言



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有